#ifndef __MACRO_H__
#define __MACRO_H__

#include "Header.h"

//Release register pointer
#define SAFE_DELETE(p)					{if (p){delete p; p = NULL;}}
#define SAFE_DELETE_ARRAY(pa)			{if (pa){delete[] pa; pa = NULL;}}
#define SAFE_DELETE_ARRAY_POINTER(pap,n)	{if (pap){for(int i=0; i<n; i++){SAFE_DELETE(pap[i])}}delete[] pap; pap = NULL;}}

//Variable
typedef unsigned char		__uint8_;
typedef char				__int8_;
typedef unsigned short		__uint16_;
typedef short				__int16_;
typedef unsigned int		__uint32_;
typedef int					__int32_;
typedef unsigned long long	__uint64_;
typedef long long			__int64_;
typedef float				__float_;
typedef bool				__bool_;

#endif